/*
* Copyright (c) 2025 Huawei Technologies Co., Ltd.
* openUBMC is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
*         http://license.coscl.org.cn/MulanPSL2
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/

#ifndef __BUS_I2C_H__
#define __BUS_I2C_H__

#include "cbus.h"

class i2c: public cbus {
    public:
        int read();
        int write();
};

extern "C" {
std::string get_class_name()
{
    return "I2c";
}

std::shared_ptr<cbus> create_bus_object()
{
    return std::make_shared<i2c>();
}
} // extern "C"

#endif // __BUS_I2C_H__